package com.ruicar.afs.cloud.manage.common.entity;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ruicar.afs.cloud.common.core.entity.BaseEntity;
import com.ruicar.afs.cloud.common.modules.contract.enums.*;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * @author: Lee
 * @date 2020-06-19 01:55:57 
 * @description 客户资产信息变更申请表
 */
@Data
@Accessors(chain = true)
@TableName(value ="manage_asset_change", autoResultMap = true)
public class ManageAssetChange extends BaseEntity<ManageAssetChange> {
	/** 渠道id */
	@ApiModelProperty("渠道id")
	@JsonSerialize(using = ToStringSerializer.class)
	@JSONField(serializeUsing = com.alibaba.fastjson.serializer.ToStringSerializer.class)
	private Long channelId;
	/** 合同号码 */
	@ApiModelProperty("合同号码")
	private String contractNo;
	/** 案件编号 */
	@ApiModelProperty("案件编号")
	private String caseNo;
	/** 申请编号 */
	@ApiModelProperty("申请编号")
	private String applyNo;
	/** 反馈时间 */
	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
	@DateTimeFormat(pattern = "yyyy-MM-dd")
	@ApiModelProperty("反馈时间")
	private Date feedbackDate;
	/** 客户姓名 */
	@ApiModelProperty("客户姓名")
	private String custName;
	/** 数据来源 枚举值：CMS、多品系统 */
	@ApiModelProperty("数据来源 枚举值：CMS、多品系统")
	private DataSourceEnum dataSource;
	/** 修正类型 资产修正、瑕疵修正 */
	@ApiModelProperty("修正类型 资产修正、瑕疵修正")
	private FixedTypeEnum fixedType;
	/** 车辆抵押 未抵押、已抵押 */
	@ApiModelProperty("车辆抵押 未抵押、已抵押")
	private CarPledgeEnum carPledge;
	/** 新车已装GPS 新是否安装GPS */
	@ApiModelProperty("新车已装GPS 新是否安装GPS")
	private YesOrNoEnum isInstall;
	/** 原车辆型号 */
	@ApiModelProperty("原车辆型号")
	private String oldVehicleType;
	/** 新车辆型号 */
	@ApiModelProperty("新车辆型号")
	private String newVehicleType;
	/** 原VIN号 */
	@ApiModelProperty("原VIN号")
	private String oldVinNo;
	/** 新VIN号 */
	@ApiModelProperty("新VIN号")
	private String newVinNo;
	/** 原发动机号 */
	@ApiModelProperty("原发动机号")
	private String oldEngineNo;
	/** 新发动机号 */
	@ApiModelProperty("新发动机号")
	private String newEngineNo;
	/** 原保单号 */
	@ApiModelProperty("原保单号")
	private String oldInsureNo;
	/** 新保单号 */
	@ApiModelProperty("新保单号")
	private String newInsureNo;
	/** 备注 */
	@ApiModelProperty("备注")
	private String remarks;
	/** 申请时间 */
	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date applyDate;
	/** 结束时间 案件审批完成时间 */
	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty("结束时间 案件审批完成时间")
	private Date endDate;
	/** 处理状态 */
	@ApiModelProperty("处理状态")
	private ProcessStatusEnum processStatus;
	/** 修正超期 枚举值：超期、未超期 */
	@ApiModelProperty("修正超期 枚举值：超期、未超期")
	private OverdueStatusEnum overdueStatus;
	/** 贷后退件 */
	@ApiModelProperty("贷后退件")
	private String loanReturn;
	/** 贷后通过时间 */
	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
	@DateTimeFormat(pattern = "yyyy-MM-dd")
	@ApiModelProperty("贷后通过时间")
	private Date loanAdoptDate;
	/** 放款补件时间 */
	@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
	@DateTimeFormat(pattern = "yyyy-MM-dd")
	@ApiModelProperty("放款补件时间")
	private Date creditSupplementDate;
	/** 放款通过时间 */
	@ApiModelProperty("放款通过时间")
	private String creditAdoptDate;
	/** 申请业务类型 合同重出、资产修正、放款端的影像信息修正。 */
	@ApiModelProperty("申请业务类型 合同重出、资产修正、放款端的影像信息修正。")
	private String applyType;

}
